From 4585996d3fcace056993d3f0c6959cd7f31e4438 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Fri, 23 Feb 2024 12:19:53 -0800 Subject: payment memos --- .../[username]/invoice/[id]/+layout.server.js | 2 +- .../(app)/[username]/invoice/[id]/+page.svelte | 12 +-- .../[username]/invoice/[id]/memo/+page.server.js | 12 +++ .../[username]/invoice/[id]/memo/+page.svelte | 88 ++++++++++++++++++++++ .../(app)/[username]/invoice/[id]/tip/+page.svelte | 3 +- 5 files changed, 108 insertions(+), 9 deletions(-) create mode 100644 src/routes/(app)/[username]/invoice/[id]/memo/+page.server.js create mode 100644 src/routes/(app)/[username]/invoice/[id]/memo/+page.svelte (limited to 'src/routes/(app)/[username]/invoice') diff --git a/src/routes/(app)/[username]/invoice/[id]/+layout.server.js b/src/routes/(app)/[username]/invoice/[id]/+layout.server.js index 6f9ae4a2..0df10cca 100644 --- a/src/routes/(app)/[username]/invoice/[id]/+layout.server.js +++ b/src/routes/(app)/[username]/invoice/[id]/+layout.server.js @@ -13,7 +13,7 @@ export async function load({ depends, params, url, parent }) { if ( user && invoice.uid !== user.id && - !url.pathname.includes("tip") && + !(url.pathname.includes("tip") || url.pathname.includes("memo")) && !options ) { redirect(307, `/send/invoice/${id}`); diff --git a/src/routes/(app)/[username]/invoice/[id]/+page.svelte b/src/routes/(app)/[username]/invoice/[id]/+page.svelte index 56feced6..a7ffbff3 100644 --- a/src/routes/(app)/[username]/invoice/[id]/+page.svelte +++ b/src/routes/(app)/[username]/invoice/[id]/+page.svelte @@ -42,12 +42,12 @@ amount, hash, type, + memoPrompt, rate, received, prompt, text, tip, - request_id, user: { username, currency }, } = invoice; @@ -144,15 +144,15 @@ {/if} {#each invoice.items as i} -
-
- {i.quantity} +
+
{i.quantity}
+
{i.name}
-
+
{f(i.price * i.quantity, currency)}
-
+
{sat(btc(i.price * i.quantity, rate))}
diff --git a/src/routes/(app)/[username]/invoice/[id]/memo/+page.server.js b/src/routes/(app)/[username]/invoice/[id]/memo/+page.server.js new file mode 100644 index 00000000..b81e2364 --- /dev/null +++ b/src/routes/(app)/[username]/invoice/[id]/memo/+page.server.js @@ -0,0 +1,12 @@ +import invoice from "$lib/invoice"; +import { redirect } from "@sveltejs/kit"; + +export async function load({ parent, params }) { + let { invoice } = await parent(); + if (!invoice.amount) + redirect(307, `/${params.username}/invoice/${invoice.id}`); +} + +export const actions = { + default: invoice, +}; diff --git a/src/routes/(app)/[username]/invoice/[id]/memo/+page.svelte b/src/routes/(app)/[username]/invoice/[id]/memo/+page.svelte new file mode 100644 index 00000000..a64ed453 --- /dev/null +++ b/src/routes/(app)/[username]/invoice/[id]/memo/+page.svelte @@ -0,0 +1,88 @@ + + +
+ + + + + + + + + + +

{$t("invoice.addMemo")}

+
+ +
{invoice.memoPrompt}
+
+ + +
diff --git a/src/routes/(app)/[username]/invoice/[id]/tip/+page.svelte b/src/routes/(app)/[username]/invoice/[id]/tip/+page.svelte index e9472118..ec35c3fb 100644 --- a/src/routes/(app)/[username]/invoice/[id]/tip/+page.svelte +++ b/src/routes/(app)/[username]/invoice/[id]/tip/+page.svelte @@ -115,13 +115,12 @@ + - -

{$t("invoice.addTipq")}

{#if !showCustomAmount}
{Math.round(tipPercent)}%
-- cgit v1.2.3